#ifndef METATYPES_H
#define METATYPES_H

#include <QAbstractTableModel>
#include <QDateEdit>
#include <QMetaType>
#include <QObject>
#include "graph-node.h"
#include "model-result.h"
#include "section-info.h"
#include "value-list-result.h"
#include "value-result.h"

class MetaTypes : public QObject
{
    Q_OBJECT
public:
    explicit MetaTypes(QObject *parent = 0);
};

Q_DECLARE_METATYPE(QAbstractTableModel*)
Q_DECLARE_METATYPE(QDateEdit*)
Q_DECLARE_METATYPE(QDateTimeEdit*)
Q_DECLARE_METATYPE(QList<QAbstractTableModel*>)
Q_DECLARE_METATYPE(QList<QList<QVariantList>>)
Q_DECLARE_METATYPE(QList<QVariantList>)
Q_DECLARE_METATYPE(GraphNode<SectionInfo>*)
Q_DECLARE_METATYPE(ModelResult*)
Q_DECLARE_METATYPE(ValueListResult*)
Q_DECLARE_METATYPE(ValueResult*)

#endif // METATYPES_H
